package com.hllxd.hism.star.basic.service.dao.mapper.doris;

import com.hllxd.hism.star.basic.service.model.doris.KanbanFlowSummaryCube;
import com.hllxd.hism.star.basic.service.model.doris.KanbanFlowSummaryFlow;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Mapper
public interface KanbanFlowSummaryCubeMapper {

    /**
     * 通用获取数据
     * @param conditionMap 条件
     * @return 返回
     */
    List<Map<String, Object>> listCommonReport(HashMap<String, String> conditionMap);


    /**
     * 返回序列趋势
     * @param columnName 列名
     * @param tableName 表
     * @param filterCondition 条件
     * @param dt 时间
     * @param dt2 时间
     * @return 返回
     */
    List<Map<String, Object>> getSummaryReportEntChart(
            @Param("columnName") String columnName,
            @Param("tableName") String tableName,
            @Param("filterCondition") String filterCondition,
            @Param("dt") String dt,
            @Param("dt2") String dt2);

    /**
     * 查看效果调控分析看板
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryCube> selectByCondition(KanbanFlowSummaryCube param);


    /**
     * 客户效果数据 - 企业
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryCube> select4Ent(KanbanFlowSummaryCube param);

    /**
     * 客户效果数据 - 客户
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryCube> select4Buid(KanbanFlowSummaryCube param);


    /**
     * 客户效果数据 - 职位
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryCube> select4Info(KanbanFlowSummaryCube param);

    /**
     * 客户效果数据 - 频道 4级类目*1级地域
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryCube> select4Channel(KanbanFlowSummaryCube param);

    /**
     * 查看效果调控分析看板
     * @param param 各维度看板
     * @return 指标信息
     */
    List<KanbanFlowSummaryFlow> selectSummaryFlow(KanbanFlowSummaryFlow param);




}
